import cv2 as cv

filename = r'D:\Lena.png'
img = cv.imread(filename)

# 题目：创建第一个视觉程序“Hello，world！”，显示Lena图片
cv.imshow("Hello,world!",img)

# 题目：对Lena图像，分解得到RGB分量及HSV分量，显示各分量，并对结果进行比较说明

#在单一通道黑白通道中，白色代表含有相应的颜色多，黑色代表含有相应的颜色少
# 显示图像的B分量
cv.imshow("Blue", img[:, :, 0])
# 显示图像的G分量，Lena图像绿色部分很少，因此黑色最多
cv.imshow("Green", img[:, :, 1])
# 显示图像的R分量，Lena图像整体偏红，因此白色最多
cv.imshow("Red", img[:, :, 2])

# 将图像转换成hsv模式
hsv = cv.cvtColor(img, cv.COLOR_BGR2HSV)
# 显示图像的H分量，色度表示纯色的属性，角度范围为[0，2π]，红色是0
cv.imshow("Hue", hsv[:, :, 0])
# 显示图像的S分量，原图中各颜色的纯度都不高，所以整体呈现灰色
cv.imshow("Saturation", hsv[:, :, 1])
# 显示图像的V分量，亮度大小
cv.imshow("Value", hsv[:, :, 2])

cv.waitKey()
cv.destroyAllWindows()